package com.zyf.swordRefersOffer;

public class FibonacciSequence {

	public static void main(String[] args) {
		System.out.println(fibonacciSequence(4));
		System.out.println(factorial(4));
	}

	/**
	 * 递归实现斐波那契数列
	 * 
	 * @author yingfing
	 * @Date 2020年12月29日
	 * @Time 下午8:26:31
	 */
	public static int fibonacciSequence(int n) {
		if (n <= -1) {
			return -1;
		}
		if (n == 1 || n == 2) {
			return 1;
		} else {
			return fibonacciSequence(n - 1) + fibonacciSequence(n - 2);
		}
	}

	/**
	 * 
	 * @param n
	 * @return
	 */
	public static int factorial(int n) {
		if (n < -1) {
			return -1;
		}
		if (n == 1) {
			return 1;
		} else {
			return n * factorial(n - 1);
		}

	}
}
